package com.cke.yang.storage.domain.entity;

import com.cke.yang.common.domain.model.ActionModel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 存储服务-文件
 * </p>
 *
 * @author yuyang
 * @since 2025-07-20
 */
@TableName("stg_file")
@Getter
@Setter
public class StgFile extends ActionModel<StgFile> {

    private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@TableId(type = IdType.AUTO, value="file_id")
	private Long fileId;

	/**
	 * 存储源id
	 */
	@TableField(value="source_id")
	private Long sourceId;

	/**
	 * 文件名称
	 */
	@TableField(value="file_name")
	private String fileName;

	/**
	 * 文件Key
	 */
	@TableField(value="file_key")
	private String fileKey;

	/**
	 * 文件路径
	 */
	@TableField(value="file_path")
	private String filePath;

	/**
	 * 文件大小
	 */
	@TableField(value="file_size")
	private Long fileSize;

	/**
	 * 文件Hash值
	 */
	@TableField(value="hash_code")
	private String hashCode;

	/**
	 * 文件系统格式
	 */
	@TableField(value="file_type")
	private String fileType;

	/**
	 * 文件内容格式
	 */
	@TableField(value="content_format")
	private String contentFormat;

	/**
	 * 文件媒体格式
	 */
	@TableField(value="mime_type")
	private String mimeType;

	/**
	 * 1:active, 0:deleted
	 */
	private Integer status;

}
